refactor: break out request helpers into new classes from app.py #99
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue #, if available: n/a
WIP
Notes
This PR introduces refactoring of the
ImageRequestHandler
andRegionRequestHandler
classes to decouple them fromModelRunner
. The handlers now accept their necessary dependencies through their constructors, making them self-contained, modular, and easier to test. Additionally, changes to theModelRunner
class were made to initialize these handlers with the appropriate dependencies.Key Changes:
Decoupled
ImageRequestHandler
fromModelRunner
:ImageRequestHandler
now takes in the following dependencies via its constructor:job_table
,image_status_monitor
,endpoint_statistics_table
tiling_strategy
,region_request_queue
,region_request_table
endpoint_utils
,config
ModelRunner
instance and improves modularity.Decoupled
RegionRequestHandler
fromModelRunner
:RegionRequestHandler
now takes in its own initialization parameters:region_request_table
,job_table
,region_status_monitor
,endpoint_statistics_table
tiling_strategy
,region_request_queue
,endpoint_utils
,config
ModelRunner
, allowing for cleaner design and unit testing.Updated
ModelRunner
to Inject Dependencies:ModelRunner
now constructs and passes all required dependencies to bothImageRequestHandler
andRegionRequestHandler
.Improved Modular Design and Testability:
Renamed
app.py
and app_config`` filesapp.py
tomodel_runner.py
app_config.py
toconfig.py
Checklist
Before you submit a pull request, please make sure you have the following:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.